﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using CloudPms.Entity.Entities;

namespace CloudPms.Logic.Business
{
    /// <summary>
    /// 账项处理
    /// <para>--------------------------</para>
    /// <para>@Author: cnalexi@gmail.com</para> 
    /// <para>@Create: 2012/9/29</para>  
    /// </summary>
    public class AccountService
    {
        /// <summary>
        /// 结账处理
        /// </summary>
        public void CheckBill()
        {
            //使用策略模式做结账处理
            //AR账 挂入当前当前数据库中的AR账项里的协议单名下
            //协议单挂的AR账有专用的列表与详细页面查看
            //并可以针对协议和AR账的单进行核对与部分结账，入账等等
            //房账产生后则
            //BILL需带有主账状态
            //预订账目等等也同样具有状态
            //预付金科目：人民币现金 港币现金 银行卡 美元现金 欧元现金等等
            //结账多几个科目
            //等等
            //
        }

        /// <summary>
        /// 入账
        /// </summary>
        public void AddBill()
        {

        }


        /// <summary>
        /// 调账
        /// </summary>
        public void AdjustBill()
        {
        }

        /// <summary>
        /// 冲账
        /// </summary>
        public void StrikeBill()
        {

        
        }
        
        /// <summary>
        /// 装载账单
        /// </summary>
        /// <returns></returns>
        public Bill BuildBill()
        {
            //装载账单
            return null;
        }
    }
}
